約 2,581,348 件
https://w.atwiki.jp/pbw_quintet/pages/18.html
―――――――――――――――――――― データベース ―――――――――――――――――――― データベースについて QUINTET上のデータベースです。兵科の詳細や五合市の街並みなど、登録やRPにご利用ください。 兵科一覧 得意・不得意・特殊分野一覧 これまでのストーリー? 五合市スポット? 五合市人物伝?
https://w.atwiki.jp/r-intro/pages/54.html
目次 目次 SQLiteを使う SQLiteのデータベースを作成する SQLiteのデータベースにテーブルを作成する SQLiteのデータベースに含まれるテーブルを一覧表示する MySQLのデータベースに接続する SQLのselect文を使用してデータフレームを操作する SQLiteを使う データベース管理システムの一つであるSQLiteをRで使うには、RSQLiteパッケージを使えばよい。 options(repos = "https //ftp.yz.yamagata-u.ac.jp/pub/cran/") install.packages("RSQLite") パッケージを ‘C /Users/○○○/AppData/Local/R/win-library/4.3’ 中にインストールします (‘lib’ が指定されていないため) 依存対象 (dependency) ‘DBI’ もインストールします (表示省略) SQLiteのデータベースを作成する パッケージRSQLiteにおいてデータベースはデータベースのファイルそのものであり、dbConnect関数でファイルを指定して接続するとファイルが存在すれば自動的にファイルが作成され、それがデータベースになる。ファイルが存在すれば、既存のデータベースに接続することになる。 以下は、存在しないprincess.sqliteというファイルを指定して接続を行い、umamusumeというテーブルを書き込んで接続を閉じた例。最後に接続を閉じることを忘れないこと(閉じないとファイルに処理した内容が書き込まれない)。 file.exists("princess.sqlite") [1] FALSE library(RSQLite) con - dbConnect(SQLite(), "princess.sqlite") dtf - data.frame( + no = c(30, 45, 58), + name = c("ライスシャワー", "スーパークリーク", "メイショウドトウ"), + seiyu = c("石見舞菜香", "優木かな", "和多田美咲")) print(dtf) no name seiyu 1 30 ライスシャワー 石見舞菜香 2 45 スーパークリーク 優木かな 3 58 メイショウドトウ 和多田美咲 dbWriteTable(con, "umamusume", dtf) dbDisconnect(con) file.exists("princess.sqlite") [1] TRUE file.info("princess.sqlite")$size [1] 8192 file.size("princess.sqlite") [1] 8192 閉じたデータベースを改めて接続して読み込んでみる。 con - dbConnect(SQLite(), "princess.sqlite") dbGetQuery(con, "select * from umamusume") no name seiyu 1 30 ライスシャワー 石見舞菜香 2 45 スーパークリーク 優木かな 3 58 メイショウドトウ 和多田美咲 dtf - dbGetQuery(con, "select * from umamusume") print(dtf) no name seiyu 1 30 ライスシャワー 石見舞菜香 2 45 スーパークリーク 優木かな 3 58 メイショウドトウ 和多田美咲 dbDisconnect(con) SQLiteのデータベースにテーブルを作成する dbWriteTable関数にデータフレームを指定すると、そのデータフレームの構造のテーブルが作成される。以下は、あらかじめ作成したデータフレームdtfを書き込んでテーブルを作成した例。dbExistsTable関数は、指定した接続先に指定したテーブルがあるか否かを判定する関数。テーブルの中身を読み込むにはdbReadTable関数を使う。テーブル内のすべてのフィールド名(列名)を得るにはdbListFileds関数を使う。 library(RSQLite) con - dbConnect(SQLite(), "princess.sqlite") dbExistsTable(con, "macross_delta") [1] FALSE print(dtf) no mei sei fname lname seiyu 1 1 カナメ バッカニア Kaname Buccaneer 安野希世乃 2 2 フレイア ヴィオン Freyja Wion 鈴木みのり 3 3 美雲 ギンヌメール Mikumo Guynemer 小清水亜美 4 4 マキナ 中島 Makina Nakajima 西田望見 5 5 レイナ プラウラー Reina Prowler 東山奈央 dbWriteTable(con, "macross_delta", dtf) dbExistsTable(con, "macross_delta") [1] TRUE 書き込んだテーブルを読み出してみる。 dtf2 - dbReadTable(con, "macross_delta") print(dtf2) no mei sei fname lname seiyu 1 1 カナメ バッカニア Kaname Buccaneer 安野希世乃 2 2 フレイア ヴィオン Freyja Wion 鈴木みのり 3 3 美雲 ギンヌメール Mikumo Guynemer 小清水亜美 4 4 マキナ 中島 Makina Nakajima 西田望見 5 5 レイナ プラウラー Reina Prowler 東山奈央 dbListFields(con, "macross_delta") [1] "no" "mei" "sei" "fname" "lname" "seiyu" dbDisconnect(con) SQLiteのデータベースに含まれるテーブルを一覧表示する dbListTablesを使う。引数には接続を指定する。以下は、2つのテーブルが含まれたあらかじめ作成してあるデータベースで一覧表示させた例。dbListFields関数は、指定したテーブルのすべてのフィールド名(列名)を返す。 con - dbConnect(SQLite(), "princess.sqlite") dbListTables(con) [1] "macross_delta" "umamusume" dbListFields(con, "macross_delta") [1] "no" "mei" "sei" "fname" "lname" "seiyu" dbListFields(con, "umamusume") [1] "no" "name" "seiyu" dbDisconnect(con) MySQLのデータベースに接続する RMySQLパッケージを使う。以下は、あらかじめサービスが稼働しているMySQLのデータベースを一覧表示させた例。データベースに接続するにはdbConnect関数を使う。dbGetQuery関数を使うことでコマンドを実行することができる。すべての作業が終了したらdbDisconnect関数で接続を切断することを忘れない。以下の1~3, 5はMySQLに最初から組み込まれているデータベースで、4のprincessは別環境で作成したデータベース。以下のとおりにR環境下でも存在を確認することができる。 dbConnect関数使用時は、アカウント、パスワード、接続先を指定する必要がある。以下の例では、rootアカウントでパスワードはpassとしている。hostにlocalhostを指定すると、ローカルホストに接続する。 library(RMySQL) drv - dbDriver("MySQL") con - dbConnect(drv, user = root , password = pass , host = localhost ) dbGetQuery(con, "show databases") Database 1 information_schema 2 mysql 3 performance_schema 4 princess 5 sys dbDisconnect(con) [1] TRUE SQLのselect文を使用してデータフレームを操作する sqldfパッケージのsqldf関数を使う。 umamusume no name prizemoney seiyu dummydate 1 8 ウオッカ 13.0487 大橋彩香 2031/02/03 2 30 ライスシャワー 6.6686 石見舞菜香 2032/11/12 3 45 スーパークリーク 5.5610 優木かな 2033/11/12 4 58 メイショウドトウ 9.2133 和多田美咲 2033/12/31 library(sqldf) sqldf("select * from umamusume") no name prizemoney seiyu dummydate 1 8 ウオッカ 13.0487 大橋彩香 2031/02/03 2 30 ライスシャワー 6.6686 石見舞菜香 2032/11/12 3 45 スーパークリーク 5.5610 優木かな 2033/11/12 4 58 メイショウドトウ 9.2133 和多田美咲 2033/12/31 sqldf("select name, seiyu from umamusume where no = 30 and no = 50") name seiyu 1 ライスシャワー 石見舞菜香 2 スーパークリーク 優木かな
https://w.atwiki.jp/nofx/pages/21.html
■トランザクション ACID 特性(ACID properties) 原子性(atomicity)トランザクションがデータベース処理の単位でありトランザクション中のデータ操作は全て確定したものとしてデータベースに反映される(コミット(commit))か、全て取り消されるか(アボート(abort))の二者択一でなければならない 整合性(consistency)整合性がとれたデータベースに対して実行されたトランザクションの実行後のデータベースの状態は、再び整合性のとれたものでなければならない 隔離性(isolation)複数のトランザクションを並行実行した場合でも、トランザクションは同時に処理されている他のトランザクションの影響を受けず、その結果はトランザクションを何らかの順序で逐次処理した場合と一致しなければならない。 耐久性(durability)いったんコミットしたトランザクション中でのデータ操作は、その後の障害などで消滅してはならない。
https://w.atwiki.jp/cafemilk/pages/32.html
ログデータベース CAFEMILK SHOPIING CART V5 ではカンマ区切りCSV形式のデータベースを用います。文字コードは UTF-8N となります。 エクセルの書式に対応しています。 データベース運用の方法は用途に合わせて基本データベースとログデータベースの二種類があります。 データベース関連の処理はフレームワークとなっていますので、カスタマイズ時の実装作業が楽です。レコードの各項目は SQL のようにカラム名をつけて操作することができ、効率的です。 独自仕様であるため、SQL に常態化しているようなデータベースインジェクション脆弱性の危険がありません。 ログデータベースの概要 ログデータベースは、レコードを収めた10のファイルとそのカラム名を収めたファイルの11ファイルからなるデータベースを運用する形態となります。レコードは古くなると消えます。(ログローテンションします。) Flock を用いてロックすることはしません。 ログデータベースでは書き込みは追記しかできません。 ログデータベースを扱うモジュールのファイル名は以下の通りです。 cafemilk_database_log.pl cafemilk_database_log.pl のあるディレクトリは以下の通りです。 [Apache_server] └ [cgi-bin] └ [pl] ログデータベースの扱うデータベースのファイルは例えば以下の通りです。 item_news.0.log.csv.cgi 新着商品のレコード0 item_news.1.log.csv.cgi 新着商品のレコード1 item_news.2.log.csv.cgi 新着商品のレコード2 item_news.3.log.csv.cgi 新着商品のレコード3 item_news.4.log.csv.cgi 新着商品のレコード4 item_news.5.log.csv.cgi 新着商品のレコード5 item_news.6.log.csv.cgi 新着商品のレコード6 item_news.7.log.csv.cgi 新着商品のレコード7 item_news.8.log.csv.cgi 新着商品のレコード8 item_news.9.log.csv.cgi 新着商品のレコード9 item_column_list.csv... 新着商品のカラム名 データベースは標準にてセーフモードで運用されます。パーミッションファイルのないディレクトにあるデータベースの読み書きはできません。 標準のセーフモードは以下のように指定されています。 $config- {database}{safety} = 1 ; $config- {database}{safety} を設定しているファイルは以下の通りです。 [Apache_server] └ [cgi-bin] └ [config] └ [admin] └ config_basic.pl セーフモードにて要求されるパーミッションファイルは以下の通りです。ファイルの内容は何でもかまいせん。 [permit_database_connect.txt] ログデータベースの操作のサンプル 以下は、ログを追記する場合のサンプルとなります。 まずはデータベース接続 my $log_database = Cafemilk_database_log- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = log/access_log_column_list.csv , column_separator = , , database_filename = log/access_log , database_separator = , , record_stack = $config- {database}{log_stack}{common}, }); ログとして書き込む内容の作成 my $error = "@{$log_error}"; my $alert = "@{$log_alert}"; $error =~ s/\x0D\x0A|\x0D|\x0A//g; $alert =~ s/\x0D\x0A|\x0D|\x0A//g; my %records = ( id = $userdata- { time }, time = $userdata- { time }, admin_name = $userdata- {admin_registry_values}{admin_name}, user_name = $userdata- {user_registry_values}{user_name}, execute = $userdata- {request_values}{execute}[0], ip_address = $ENV{ REMOTE_ADDR }, referer = $ENV{ HTTP_REFERER }, # post = $ENV{ CONTENT_LENGTH }, # get = $ENV{ QUERY_STRING }, # cookie = $ENV{ HTTP_COOKIE }, # error = $error, # alert = $alert, ); 追記 $log_database- postscript(\%records); 終了処理 undef $log_database; 以下は、最後のレコードを取得する場合のサンプルとなります。 my $database = Cafemilk_database_log- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = database/forum_thread_column_list.csv , column_separator = , , database_filename = database/admin_forum_thread , database_separator = , , record_stack = $config- {database}{session_stack}{admin_forum}{thread}, }); 条件に合う最後のレコードを取得 my $extract_database = $database- extract_last_record ({ extract_column_name = thread_id , extract_column_value = $message_values{thread_id}, }); %thread_values にレコードのカラム名と値を格納 %thread_values = $database- get_values_argument ({ database_values = $extract_database, }); undef $database; 以下は、最後のレコードを取得して内容を修正し、追記する場合のサンプルとなります。 my $database = Cafemilk_database_log- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = log/sale_count_column_list.csv , column_separator = , , database_filename = log/sale_count , database_separator = , , record_stack = 10, }); my $extract_database = $database- extract_last_record ({ extract_column_name = dummy , extract_column_value = count , }); %count_values にレコードのカラム名と値を格納 my %count_values = $database- get_values_argument ({ database_values = $extract_database, }); %count_values の変更 $count_values{count} ++; $status- {sale_count} = $count_values{count}; $count_values{id} = $userdata- { time }; $count_values{time} = $userdata- { time }; $count_values{dummy} = count ; 追記 $database- postscript(\%count_values); undef $database; 以下は、データベスーから特定の条件に合うレコード(複数)を抽出して、抽出された各レコードを順次処理していく場合のサンプルとなります。 まずはデータベース接続 my $database = Cafemilk_database_log- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = database/item_column_list.csv , column_separator = , , database_filename = database/item_news , database_separator = , , record_stack = $config- {database}{session_stack}{item}{news}, }); 全レコードの読み込み $database- get_record_all(); 追記により重複しているレコードを最新のものを除いて削除 $database- merge_database ({ column_name = item_id , }); 完全一致カラム抽出処理 my $target = multiprice ; $database- match_database ({ column_name = item_type , match_word = $target, }); 検索文字列の用意 文字列はスペース区切りで AND 検索となる my $words = $input_values{ search }; $words = Cafemilk_basic decode_escape ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, text = $words, }); 検索の対象となるカラムの指定 my @columns = ( "item_id", "name_$userdata- {language_type}", "text_1_$userdata- {language_type}", "text_2_$userdata- {language_type}", "manufacturer_$userdata- {language_type}", "table_value_1_$userdata- {language_type}", "table_value_2_$userdata- {language_type}", "table_value_3_$userdata- {language_type}", "table_value_4_$userdata- {language_type}", "option_name_1_$userdata- {language_type}", "option_name_2_$userdata- {language_type}", "option_name_3_$userdata- {language_type}", ); 検索実行 $database- search_database ({ search_column = \@columns, search_words = $words, 英字の大文字と小文字の区別 1 でしない character_mode = 1 , }); 並び替え処理 $database- sort_database ({ column_name = "price_main_$userdata- {currency_type}", 逆順処理 1 で逆順 reverse_mode = 0 , 並び替えモード number_quick で数値モード character_quick で文字モード sort_mode = number_quick , }); 抽出・検索・並び替えされたレコードを取得 my @lines = $database- get_extract_database(); レコード処理 foreach (@lines) { my $line = $_; レコードの分割とカラム名との関連づけ my %target_values = $database- get_values_argument ({ database_values = $line, }); ここで例えばレコードの内容の表示処理を行う print $target_values{item_id}; } 終了処理 undef $database;
https://w.atwiki.jp/cafemilk/pages/31.html
基本データベース CAFEMILK SHOPIING CART V5 ではカンマ区切りCSV形式のデータベースを用います。文字コードは UTF-8N となります。 エクセルの書式に対応しています。 データベース運用の方法は用途に合わせて基本データベースとログデータベースの二種類があります。 データベース関連の処理はフレームワークとなっていますので、カスタマイズ時の実装作業が楽です。レコードの各項目は SQL のようにカラム名をつけて操作することができ、効率的です。 独自仕様であるため、SQL に常態化しているようなデータベースインジェクション脆弱性の危険がありません。 基本データベースの概要 基本データベースは、レコードを収めた1つのファイルとそのカラム名を収めたファイルの2ファイルからなるデータベースを運用する形態となります。レコードは古くなっても消えません。(ログローテンションしません。) Flock を用いてロックすることができます。 基本データベースを扱うモジュールのファイル名は以下の通りです。 cafemilk_database_basic.pl cafemilk_database_basic.pl のあるディレクトリは以下の通りです。 [Apache_server] └ [cgi-bin] └ [pl] 基本データベースの扱うデータベースのファイルは例えば以下の通りです。 item.csv.cgi........ 商品データベースのレコード item_column_list.csv 商品データベースのカラム名 データベースは標準にてセーフモードで運用されます。パーミッションファイルのないディレクトにあるデータベースの読み書きはできません。 標準のセーフモードは以下のように指定されています。 $config- {database}{safety} = 1 ; $config- {database}{safety} を設定しているファイルは以下の通りです。 [Apache_server] └ [cgi-bin] └ [config] └ [admin] └ config_basic.pl セーフモードにて要求されるパーミッションファイルは以下の通りです。ファイルの内容は何でもかまいせん。 [permit_database_connect.txt] 基本データベースの操作のサンプル 以下は、データベスーから特定の条件に合うレコード(複数)を抽出して、抽出された各レコードを順次処理していく場合のサンプルとなります。 まずはデータベース接続 my $database = Cafemilk_database_basic- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, カラム名の所在の指定 column_filename = database/item_column_list.csv , カラム名の区切りコードを指定 値はカンマ固定 column_separator = , , レコードの所在の指定 database_filename = database/item.csv.cgi , レコードの区切りコードを指定 値はカンマ固定 database_separator = , , 接続モード database_mode = + , Flockの設定 ロックするときは 2 とする database_flock = 2 , }); 全レコードの読み込み $database- get_record_all(); 完全一致カラム抽出処理 my $target = multiprice ; $database- match_database ({ column_name = item_type , match_word = $target, }); 検索文字列の用意 文字列はスペース区切りで AND 検索となる my $words = $input_values{ search }; $words = Cafemilk_basic decode_escape ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, text = $words, }); 検索の対象となるカラムの指定 my @columns = ( "item_id", "name_$userdata- {language_type}", "text_1_$userdata- {language_type}", "text_2_$userdata- {language_type}", "manufacturer_$userdata- {language_type}", "table_value_1_$userdata- {language_type}", "table_value_2_$userdata- {language_type}", "table_value_3_$userdata- {language_type}", "table_value_4_$userdata- {language_type}", "option_name_1_$userdata- {language_type}", "option_name_2_$userdata- {language_type}", "option_name_3_$userdata- {language_type}", ); 検索実行 $database- search_database ({ search_column = \@columns, search_words = $words, 英字の大文字と小文字の区別 1 でしない character_mode = 1 , }); 並び替え処理 $database- sort_database ({ column_name = "price_main_$userdata- {currency_type}", 逆順処理 1 で逆順 reverse_mode = 0 , 並び替えモード number_quick で数値モード character_quick で文字モード sort_mode = number_quick , }); 抽出・検索・並び替えされたレコードを取得 my @lines = $database- get_extract_database(); レコード処理 foreach (@lines) { my $line = $_; レコードの分割とカラム名との関連づけ my %target_values = $database- get_values_argument ({ database_values = $line, }); ここで例えばレコードの内容の表示処理を行う print $target_values{item_id}; } 終了処理 undef $database; 以下は、データベスーから特定の条件に合うレコード(単数)を抽出して、レコードを書き換える場合のサンプルとなります。 my $database = Cafemilk_database_basic- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = database/item_column_list.csv , column_separator = , , database_filename = database/item.csv.cgi , database_separator = , , database_mode = + , database_flock = 2 , }); $database- get_record_all(); 商品コード hoge のレコード(単独)を抽出 my $extract_database = $database- extract_last_record ({ extract_column_name = item_id , extract_column_value = hoge , }); レコードの分割とカラム名との関連づけ my %record = $database- get_values_argument ({ database_values = $extract_database, }); ここで例えば商品の販売数を更新 $record{sales_quantity} ++; レコードの差し替え $database- replace_record ({ extract_column_name = item_id , extract_column_value = hoge , records = \%record, }); 上書き $database- overwrite(); undef $database; 以下は、特定の条件に合うレコードを削除する場合のサンプルとなります。 my $database = Cafemilk_database_basic- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = database/item_column_list.csv , column_separator = , , database_filename = database/item.csv.cgi , database_separator = , , database_mode = + , database_flock = 2 , }); $database- get_record_all(); 商品コード hoge のレコード(単独)を削除 $database- delete_record ({ extract_column_name = item_id , extract_column_value = hoge , }); 上書き $database- overwrite(); undef $database; 以下は、レコードを追記する場合のサンプルとなります。追記を行う場合、get_record_all() や overwrite() は必要ありません。 my $database = Cafemilk_database_basic- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = database/item_column_list.csv , column_separator = , , database_filename = database/item.csv.cgi , database_separator = , , database_mode = + , database_flock = 2 , }); レコードの作成 my %record; %recordにレコードのカラム名と値を格納 (省略) 追記 $database- postscript(\%record); undef $database; 以下はレコード数を確認する場合のサンプルとなります。 my $database = Cafemilk_database_basic- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = database/item_column_list.csv , column_separator = , , database_filename = database/item.csv.cgi , database_separator = , , database_mode = + , database_flock = 2 , }); $database- get_record_all(); my $target = multiprice ; $database- match_database ({ column_name = item_type , match_word = $target, }); レコード数の取得 my $stack = $database- get_stack(); undef $database; 以下はダブルソートのサンプルとなります。 my $database = Cafemilk_database_basic- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = database/item_column_list.csv , column_separator = , , database_filename = database/item.csv.cgi , database_separator = , , database_mode = + , database_flock = 2 , }); $database- get_record_all(); ダブルソート $database- double_sort_database ({ column_name_1 = item_type , reverse_mode_1 = 0 , sort_mode_1 = character_quick , column_name_2 = item_id , reverse_mode_2 = 0 , sort_mode_2 = character_quick , }); ここに各処理(省略) undef $database; DUMMY 接続 データベースのロックの衝突を防いだり、処理の速度を上げるために DUMMY 接続を用いることができます。 また、DUMMY 接続をうまく使うことにより、あるプラグインで抽出検索並び替え等を行ったレコードを別のプラグインで再利用できます。DUMMY 接続では書き込みはできません。 以下はDUMMY 接続のサンプルとなります。 my $database = Cafemilk_database_basic- connect ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = database/item_column_list.csv , column_separator = , , database_filename = database/item.csv.cgi , database_separator = , , database_mode = + , database_flock = 2 , }); $database- get_record_all(); my @lines = $database- get_extract_database(); $userdata- {database}{lines}{item} = \@lines; undef $database; my $database = Cafemilk_database_basic- dummy ({ config = $config, userdata = $userdata, log_error = $log_error, log_alert = $log_alert, status = $status, column_filename = database/item_column_list.csv , column_separator = , , database_separator = , , }); my @lines = @{$userdata- {database}{lines}{item}}; レコード処理 foreach (@lines) { my $line = $_; 省略 } undef $database; 詳細 データベース接続時の接続モードは以下のものの使用が禁止されています。OS の仕様により上書き時にデータが消えることがあるためです。 + データベースに上書きがある場合、接続モードは以下を用いてください。 + データベース読み込むだけの場合、接続モードは以下を用いてください。 Flock は基本的に常に 2 です。 postscript はただちに実行されるため、overwrite の必要はありません。 並び替えモード 並び替えモードは以下の通りとなります。 number_quick... 数値のソート character_quick 文字列のソート 以下のモードは使用を禁止されていますが、検索結果が確実でなくてもよい場合に、高速化を得ることができます。 number_basic... 数値のソート character_basic 文字列のソート 通常は使いませんが、ベンチマークを取りたい場合など、ほかに以下のソートが利用できます。 number_normal......... 標準的なコードで書かれた早くないソート 数値 character_normal...... 標準的なコードで書かれた早くないソート 文字列 number_schwartz....... シュワルツ変換 数値 character_schwartz .... シュワルツ変換 文字列 number_eimerbrigade... バケットソート 数値 character_eimerbrigade バケットソート 文字列 通常は使いませんが、以下は検索結果が雑になるソートです。 number_greathattery... いい加減ソート 数値 character_greathattery いい加減ソート 文字列
https://w.atwiki.jp/maspedia/pages/50.html
PLAYSTATION Storeにて、2008年6月19日から無料で配信していたデータベースソフト。 概要 正式名称は「METAL GEAR SOLID4 DATABASE」。 2008年6月19日から配信がスタートしたが、現在は配信されていない。 問題点 マスター・ミラーの一人娘とされる「キャサリー」について記載したソースはこのデータベースのみだった為、PS3を持っていない・またはデータベースを配信期間内にダウンロードしていなかったユーザーは現在キャサリーミラーに関するソースを確認することができない。 マスター・ミラーの項目 以下がその内容である。 本名マクドネル・ベネディクト・ミラー。FOXHOUNDのサバイバル教官。 鬼教官といわれ、FOXHOUND隊員達からは敬意を込めて「マスター・ミラー」と呼ばれていた。日系三世。SAS、グリーンベレー、米海兵隊のブート・キャンプ、傭兵学校のコーチをしている。アイデアマンであり科学知識にも長けている。ブート・キャンプ退任後はアラスカに在住。時折アラスカ・スカウトの教官などをして暮らしている。現地の動植物について詳しくサバイバルの知識も豊富。ひとり娘のキャサリーとふたり暮らし。 ソリッド・スネークとはFOXHOUND訓練所時代からの付き合い。1999年、ザンジバーランド騒乱時にソリッド・スネークをサポートするために後方支援部隊に参加。2005年にシャドー・モセス島事件にも自宅から無線を通じて、後方支援部隊として参加する。 だがシャドー・モセス島事件でスネークをサポートしていたマスター・ミラーは別人だった。本物のマスター・ミラーはアラスカの自宅で殺害されていた。マスター・ミラーとしてふるまっていた人物はリキッド・スネークであった。 ニュースソース ITmedia - KONAMI、「メタルギア」シリーズ7作品のデータベースソフトを無料配信 ファミ通.com - 『MGS4』をプレイ中、アレ? と思ったら…… ”メタルギア サーガ”7作品のデータベースがPLAYSTATION Storeで無料配信 GAME Watch - KONAMI、PS3用ソフト「METAL GEAR SOLID4 DATABASE」「MGS4」をより楽しむためのデータベースソフトを配信 関連 マスター マクドネル・ミラー キャサリーちゃん
https://w.atwiki.jp/oblivionxbox360/pages/27.html
Top データベース データベース 世界 組織 ギルド NPC マップ 敵 キャラクター 種族 能力値 クラス 星座 スキル 初期能力 アイテム 装備 ポーション 魔法 書物 家 馬
https://w.atwiki.jp/galleon/pages/15.html
馬主名 ふりがな 生年 主な所有馬 職業 馬主登録年 近藤利一 こんどう りいち 1942 アドマイヤムーン 「合建株式会社」代表取締役会長 金子真人 かねこ まこと ディープインパクト 福井明 ふくい あきら 1963 オウケンブルースリ 商品デザインを主とするクリエーター及び空手道場の桜拳塾の経営者、師範 大谷高雄 おおたに たかお セイウンワンダー 建築資材販売会社役員 1966 馬主名 ふりがな 主な所有馬 馬主名 ふりがな 主な所有馬 馬主名 ふりがな 主な所有馬
https://w.atwiki.jp/chogyokai10/pages/53.html
データベース 釣種別に纏めた、簡単なルアーや仕掛けのデータベースです。釣具を購入する際の参考にしてください。 現段階では麻田の独断と偏見に満ちてしまっている(これでもかなり抑えてはいますが)ので、皆様も思うところがあればドシドシ追加・修正してください。 基本的にデータベースは釣具を購入する1、2年生向けです。入手しにくいもの・高価なもの・マニアックなものは「マニア館」へ!さぁ、互いのシークレットを曝け出しましょう!(そういうの大好きです!byあさだ) * ルアーフィッシング エリアトラウト バス シーバス -ボートシーバス ロックフィッシュ オフショア -シイラ編 エギング * マニアックの館
https://w.atwiki.jp/mbinformalwiki/pages/29.html
データベース MineBlocksの基本 操作方法 進み方ガイド MineBlocks上級者の基本 建築物 配布ワールド スキン レシピ ツール アイテム ユーティリティ 精錬 ゲームシステム ワールド バイオーム 動物 モンスター エンチャント コマンド(チート)一覧 アップデート 配布 配布ワールド/ダンジョン 配布スキン データベースを編集